<template>
	<!-- 创建表 -->
	<el-dialog title="创建表" v-model="visible" width="800px" top="5vh" append-to-body>
		<span>创建表语句(支持多个建表语句)：</span>
		<el-input type="textarea" :rows="10" placeholder="请输入文本" v-model="content"></el-input>
		<template #footer>
			<div class="dialog-footer">
				<el-button type="primary" @click="handleImportTable">确 定</el-button>
				<el-button @click="visible = false">取 消</el-button>
			</div>
		</template>
	</el-dialog>
</template>

<script setup>
import {createTable} from "@/api/tool/gen";

const visible = ref(false);
const content = ref("");
const {proxy} = getCurrentInstance();
const emit = defineEmits(["ok"]);

/** 显示弹框 */
function show() {
	visible.value = true;
}

/** 导入按钮操作 */
function handleImportTable() {
	if (content.value === "") {
		proxy.$modal.msgError("请输入建表语句");
		return;
	}
	createTable({sql: content.value}).then(res => {
		proxy.$modal.msgSuccess(res.msg);
		if (res.code === 200) {
			visible.value = false;
			emit("ok");
		}
	});
}

defineExpose({
	show,
});
</script>
